In [4]:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from pylab import rcParams
%matplotlib inline
rcParams['figure.figsize'] = 20, 20
pd.set_option('display.max_columns', 100)
from sklearn.preprocessing import StandardScaler
from sklearn.model_selection import train_test_split
from mpl_toolkits.axes_grid1 import make_axes_locatable
import seaborn as sns
In [5]:
pd.options.display.float_format = '{:,.2f}'.format
In [6]:
def plot_correlation(df, features):
    corr = df[features].corr()
    fig, ax = plt.subplots(figsize=(10, 10));

    im = ax.matshow(corr, cmap='RdBu', vmin=-1, vmax=1);

    for i in range(len(features)):
        for j in range(len(features)):
            c = corr.iloc[j,i]
            ax.text(i, j, '%.2f' % c, color='w', fontsize=10);#, va='center', ha='center');

    plt.xticks(range(len(features)), features, rotation = 90);
    plt.yticks(range(len(features)), features);
    
    divider = make_axes_locatable(ax)
    cax = divider.append_axes("right", size="5%", pad=0.5)
    plt.colorbar(im, cax=cax)

    plt.show();

1. Cleaning and preparing the global CSPS dataset

1.1. Loading and inspecting the original 'meaningful' CSPS dataset

In [104]:
folder = '/projects/st_all_airbus_all_data_analysis/ISAMI/CSPS/CSPS_Thibault/CSPS_test/'
file = 'CSPS_output_and_meaningful_values_100000.csv'
In [105]:
csps = pd.read_csv(folder + file, index_col=False, na_values=['---','----','-----','N/A','--','------'])
In [106]:
csps.info()
<class 'pandas.core.frame.DataFrame'>
RangeIndex: 100000 entries, 0 to 99999
Data columns (total 98 columns):
Test_case_ID                        100000 non-null object
Load_Case_ID                        100000 non-null object
Left_Panel_length                   100000 non-null float64
Left_Panel_width                    100000 non-null float64
Left_Panel_thickness                100000 non-null float64
Left_Panel_curvature_radius         100000 non-null float64
Right_Panel_length                  100000 non-null float64
Right_Panel_width                   100000 non-null float64
Right_Panel_thickness               100000 non-null float64
Right_Panel_curvature_radius        100000 non-null float64
Stringer_Cross_Section              100000 non-null float64
Super-Stringer_Cross_Section        100000 non-null float64
Skin_width_below_omega              100000 non-null float64
Stringer axial stiffness            100000 non-null float64
Total axial stiffness               100000 non-null float64
Total bending stiffness             100000 non-null float64
NX_Left_LFX                         100000 non-null float64
NY_Left_LFX                         100000 non-null float64
NXY_Left_LFX                        100000 non-null float64
NX_Right_LFX                        100000 non-null float64
NY_Right_LFX                        100000 non-null float64
NXY_Right_LFX                       100000 non-null float64
NX_Left_NLF                         100000 non-null float64
NY_Left_NLF                         100000 non-null float64
NXY_Left_NLF                        100000 non-null float64
NX_Right_NLF                        100000 non-null float64
NY_Right_NLF                        100000 non-null float64
NXY_Right_NLF                       100000 non-null float64
EPS_X_LFX                           100000 non-null int64
EPS_Y_Left_LFX                      100000 non-null int64
EPS_XY_Left_LFX                     100000 non-null int64
EPS_Y_Right_LFX                     100000 non-null int64
EPS_XY_Right_LFX                    100000 non-null int64
EPS_XY_STR_LFX                      100000 non-null int64
EPS_X_NLF                           100000 non-null int64
EPS_XY_STR_NLF                      100000 non-null int64
PX_TOT                              100000 non-null float64
Buckling_RF                         96134 non-null float64
Buckling_Mode                       100000 non-null object
Panel_local_buckling (SYM.)         75911 non-null float64
Panel_local_buckling (ROT.)         77459 non-null float64
Panel_local_buckling                76031 non-null float64
Hoop_Driven                         76066 non-null object
General_Buckling                    79964 non-null float64
Post-Buckling_RF                    56823 non-null float64
Stringer_local_buckling_RF          95907 non-null float64
Stringer_local_buckling_Location    85362 non-null object
Skin_inter-rivet_buckling_RF        0 non-null float64
IDT_RF                              49107 non-null float64
IDT_Type                            85362 non-null object
Post-Buckling_Cut-Off               93966 non-null float64
Skin_DT                             96653 non-null float64
Skin_DT_Criterion                   96653 non-null object
SkinUnderOmega_DT                   96653 non-null float64
SkinUnderOmega_DT_Criterion         96653 non-null object
DTStringer                          99999 non-null float64
Omega CAI Allowable                 100000 non-null int64
PlainStrength                       96653 non-null float64
NotchSensitivity                    75146 non-null float64
Reparability_Panel                  96653 non-null float64
Reparability_Stringer               91541 non-null float64
Drain_Hole                          0 non-null float64
Critical_RF                         100000 non-null float64
Nbplies                             100000 non-null int64
chiA1                               100000 non-null float64
chiA2                               100000 non-null float64
chiD1                               100000 non-null float64
chiD2                               100000 non-null float64
chiD3                               100000 non-null float64
p0                                  100000 non-null float64
p90                                 100000 non-null float64
t                                   100000 non-null float64
tc                                  100000 non-null float64
Nbplies_cap                         100000 non-null int64
p0c                                 100000 non-null float64
p90c                                100000 non-null float64
chiA1c                              100000 non-null float64
chiA2c                              100000 non-null float64
tw                                  100000 non-null float64
Nbplies_web                         100000 non-null int64
p0w                                 100000 non-null float64
p90w                                100000 non-null float64
chiA1w                              100000 non-null float64
chiA2w                              100000 non-null float64
h                                   100000 non-null float64
ba                                  100000 non-null int64
bf                                  100000 non-null float64
ra                                  100000 non-null int64
rf                                  100000 non-null int64
alpha                               100000 non-null float64
b                                   100000 non-null float64
ro                                  100000 non-null float64
theta                               100000 non-null float64
phi                                 100000 non-null float64
Nxx                                 100000 non-null float64
Nyy                                 100000 non-null float64
Nxy                                 100000 non-null float64
Fn                                  100000 non-null float64
dtypes: float64(75), int64(15), object(8)
memory usage: 74.8+ MB
In [107]:
csps.head()
Out[107]:
Test_case_ID Load_Case_ID Left_Panel_length Left_Panel_width Left_Panel_thickness Left_Panel_curvature_radius Right_Panel_length Right_Panel_width Right_Panel_thickness Right_Panel_curvature_radius Stringer_Cross_Section Super-Stringer_Cross_Section Skin_width_below_omega Stringer axial stiffness Total axial stiffness Total bending stiffness NX_Left_LFX NY_Left_LFX NXY_Left_LFX NX_Right_LFX NY_Right_LFX NXY_Right_LFX NX_Left_NLF NY_Left_NLF NXY_Left_NLF NX_Right_NLF NY_Right_NLF NXY_Right_NLF EPS_X_LFX EPS_Y_Left_LFX EPS_XY_Left_LFX EPS_Y_Right_LFX EPS_XY_Right_LFX EPS_XY_STR_LFX EPS_X_NLF EPS_XY_STR_NLF PX_TOT Buckling_RF Buckling_Mode Panel_local_buckling (SYM.) Panel_local_buckling (ROT.) Panel_local_buckling Hoop_Driven General_Buckling Post-Buckling_RF Stringer_local_buckling_RF Stringer_local_buckling_Location Skin_inter-rivet_buckling_RF IDT_RF IDT_Type Post-Buckling_Cut-Off Skin_DT Skin_DT_Criterion SkinUnderOmega_DT SkinUnderOmega_DT_Criterion DTStringer Omega CAI Allowable PlainStrength NotchSensitivity Reparability_Panel Reparability_Stringer Drain_Hole Critical_RF Nbplies chiA1 chiA2 chiD1 chiD2 chiD3 p0 p90 t tc Nbplies_cap p0c p90c chiA1c chiA2c tw Nbplies_web p0w p90w chiA1w chiA2w h ba bf ra rf alpha b ro theta phi Nxx Nyy Nxy Fn
0 TC1 LC1 635.00 213.75 2.39 2,827.29 635.00 213.75 2.39 2,827.29 550.10 1,060.96 62.88 30,244,456.00 46,858,196.00 10,245,938,176.00 -96.60 -309.20 -248.90 -96.60 -309.20 -248.90 -139.30 -318.90 -255.40 -139.30 -318.90 -255.40 709 -639 -10861 -639 -10861 -2731 226 -2731 10,582.00 0.71 GEN-STA 0.92 0.94 0.92 NO 0.71 nan 2.00 Sk_om. nan nan COL 1.12 0.54 Area 1.11 Area 2.12 -2336 0.95 0.63 0.48 1.91 nan 0.48 13 -0.54 0.69 -0.23 0.21 0.39 0.15 0.69 2.39 4.32 34 0.41 0.35 0.06 0.53 3.05 24 0.17 0.50 -0.33 0.33 34.06 29 43.75 4 8 20.62 213.75 0.72 2.95 -0.88 49.51 -309.20 -248.88 10,581.82
1 TC10 LC10 635.00 264.38 4.97 2,827.29 635.00 264.38 4.97 2,827.29 323.06 1,637.03 22.99 32,813,544.00 172,283,472.00 5,697,022,464.00 176.60 361.60 -16.80 176.60 361.60 -16.80 176.60 361.60 -16.80 176.60 361.60 -16.80 35 2357 -231 2357 -231 -70 35 -70 44,996.00 nan STR nan nan nan NaN nan nan nan NaN nan nan NaN nan 3.42 Area 3.43 Area 77.10 -2336 3.64 2.09 2.03 5.35 nan 2.03 27 0.56 0.41 0.35 -0.30 -0.11 0.63 0.07 4.97 5.71 45 0.64 0.18 0.47 0.64 2.03 16 0.62 0.06 0.56 0.38 49.06 29 23.75 4 8 30.62 273.75 0.37 -0.20 0.69 -60.32 253.76 303.26 -16,513.35
2 TC100 LC100 635.00 244.57 4.42 2,827.29 635.00 244.57 4.42 2,827.29 471.55 1,552.55 53.28 29,044,886.00 90,933,992.00 6,639,408,128.00 -270.70 28.20 31.80 -270.70 28.20 31.80 -270.70 28.20 31.80 -270.70 28.20 31.80 -1073 90 1714 90 1714 164 -1073 164 -97,274.00 1.99 GEN-STA 2.62 2.81 2.62 NO 1.99 nan 11.87 Sk_om. nan 0.98 COL 2.80 nan NaN nan NaN 2.17 -2336 nan nan nan 0.94 nan 0.94 27 -0.33 0.41 0.05 -0.22 -0.04 0.19 0.52 4.97 5.46 43 0.63 0.19 0.44 0.63 2.29 18 0.28 0.61 -0.33 0.78 21.41 29 18.12 4 8 22.81 223.12 0.42 -2.45 -0.74 -188.02 -268.62 -229.11 -41,952.36
3 TC1000 LC1000 635.00 256.25 1.84 2,827.29 635.00 256.25 1.84 2,827.29 428.00 899.50 65.41 47,732,092.00 87,350,648.00 12,892,908,544.00 -67.10 -144.70 371.40 -67.10 -144.70 371.40 -137.10 -157.00 376.70 -137.10 -157.00 376.70 492 -133 11184 -133 11184 5522 100 5522 8,710.00 0.16 LOC-STA 0.16 0.17 0.16 NO nan 0.69 0.69 Sk_om. nan nan COL 0.20 0.42 Area 0.68 Area 1.02 -2336 1.14 0.71 0.53 1.08 nan 0.20 13 0.15 0.54 -0.51 0.45 -0.27 0.46 0.31 2.39 1.65 13 0.85 0.08 0.77 0.85 1.27 10 0.80 0.10 0.70 0.80 36.41 29 38.12 4 8 32.81 283.12 0.77 0.69 0.83 170.41 296.38 207.65 48,248.18
4 TC10000 LC10000 635.00 268.12 3.13 2,827.29 635.00 268.12 3.13 2,827.29 568.94 1,408.16 58.59 45,357,196.00 93,516,048.00 7,203,976,192.00 50.80 400.00 0.70 50.80 400.00 0.70 50.80 400.00 0.70 50.80 400.00 0.70 -295 2942 -1738 2942 -1738 5 -295 5 -560.00 99.92 STR nan nan nan NaN 812.10 99.92 99.92 Head nan 246.90 COL 99.92 2.30 Area 2.30 Area 7.91 -2336 3.39 nan 1.79 2.32 nan 1.79 9 0.00 0.33 -0.33 -0.19 0.46 0.33 0.33 1.66 5.08 40 0.55 0.15 0.40 0.40 2.54 20 0.15 0.25 -0.10 -0.20 47.66 29 23.12 4 8 30.31 238.12 0.51 1.47 -0.34 374.80 -134.76 36.91 89,250.23

1.2. Re-shuffling and alligning properly the DoE with CSPS outputs according to correct Test_case_ID

In [108]:
deo_inputs = csps.iloc[:,63:]
csps_inputs = csps.iloc[:,0:63]
In [109]:
def natural_sort(df, col):
    df[['_str', '_int']] = df[col].str.extract(r'([a-zA-Z]*)(\d*)')
    df['_int'] = df['_int'].astype(int)

    return df.sort_values(by=['_str', '_int']).drop(['_int', '_str'], axis=1)
In [110]:
csps_inputs_sorted = natural_sort(csps_inputs, 'Test_case_ID').reset_index(drop=True)
In [111]:
csps_inputs_sorted.head()
Out[111]:
Test_case_ID Load_Case_ID Left_Panel_length Left_Panel_width Left_Panel_thickness Left_Panel_curvature_radius Right_Panel_length Right_Panel_width Right_Panel_thickness Right_Panel_curvature_radius Stringer_Cross_Section Super-Stringer_Cross_Section Skin_width_below_omega Stringer axial stiffness Total axial stiffness Total bending stiffness NX_Left_LFX NY_Left_LFX NXY_Left_LFX NX_Right_LFX NY_Right_LFX NXY_Right_LFX NX_Left_NLF NY_Left_NLF NXY_Left_NLF NX_Right_NLF NY_Right_NLF NXY_Right_NLF EPS_X_LFX EPS_Y_Left_LFX EPS_XY_Left_LFX EPS_Y_Right_LFX EPS_XY_Right_LFX EPS_XY_STR_LFX EPS_X_NLF EPS_XY_STR_NLF PX_TOT Buckling_RF Buckling_Mode Panel_local_buckling (SYM.) Panel_local_buckling (ROT.) Panel_local_buckling Hoop_Driven General_Buckling Post-Buckling_RF Stringer_local_buckling_RF Stringer_local_buckling_Location Skin_inter-rivet_buckling_RF IDT_RF IDT_Type Post-Buckling_Cut-Off Skin_DT Skin_DT_Criterion SkinUnderOmega_DT SkinUnderOmega_DT_Criterion DTStringer Omega CAI Allowable PlainStrength NotchSensitivity Reparability_Panel Reparability_Stringer Drain_Hole Critical_RF
0 TC1 LC1 635.00 213.75 2.39 2,827.29 635.00 213.75 2.39 2,827.29 550.10 1,060.96 62.88 30,244,456.00 46,858,196.00 10,245,938,176.00 -96.60 -309.20 -248.90 -96.60 -309.20 -248.90 -139.30 -318.90 -255.40 -139.30 -318.90 -255.40 709 -639 -10861 -639 -10861 -2731 226 -2731 10,582.00 0.71 GEN-STA 0.92 0.94 0.92 NO 0.71 nan 2.00 Sk_om. nan nan COL 1.12 0.54 Area 1.11 Area 2.12 -2336 0.95 0.63 0.48 1.91 nan 0.48
1 TC2 LC2 635.00 273.75 4.97 2,827.29 635.00 273.75 4.97 2,827.29 470.49 1,831.03 77.12 49,622,784.00 194,038,464.00 46,049,427,456.00 -15.80 253.80 303.30 -15.80 253.80 303.30 -15.80 253.80 303.30 -15.80 253.80 303.30 -240 1770 4172 1770 4172 1038 -240 1038 -16,513.00 8.15 STR 9.71 9.46 9.46 NO 13.09 8.15 8.15 Web nan 31.58 COL 8.15 2.36 Area 2.81 Area 4.96 -2336 3.35 2.01 1.34 2.21 nan 1.34
2 TC3 LC3 635.00 223.12 4.97 2,827.29 635.00 223.12 4.97 2,827.29 314.06 1,422.97 31.17 21,602,308.00 71,567,664.00 4,591,708,672.00 -139.40 -268.60 -229.10 -139.40 -268.60 -229.10 -139.40 -268.60 -229.10 -139.40 -268.60 -229.10 -454 -501 -3152 -501 -3152 -543 -454 -543 -41,952.00 0.88 GEN-STA 1.74 1.26 1.26 YES 0.88 nan 12.51 Sk_om. nan 2.02 COL 1.27 2.27 Area 2.53 Area 3.74 -2336 3.03 1.95 1.41 2.04 nan 0.88
3 TC4 LC4 635.00 283.12 2.39 2,827.29 635.00 283.12 2.39 2,827.29 240.60 917.26 82.05 30,611,002.00 81,930,016.00 13,375,366,144.00 55.80 296.40 207.60 55.80 296.40 207.60 55.80 296.40 207.60 55.80 296.40 207.60 834 3162 9784 3162 9784 3612 834 3612 48,248.00 13.19 STR nan nan nan NaN 122.30 13.19 13.19 Web nan nan COL 13.19 0.82 Area 0.97 Area 1.18 -1852 1.05 0.77 0.55 0.87 nan 0.55
4 TC5 LC5 635.00 238.12 1.66 2,827.29 635.00 238.12 1.66 2,827.29 519.25 914.53 72.96 28,062,236.00 53,377,776.00 20,755,388,416.00 171.40 -134.80 36.90 171.40 -134.80 36.90 164.10 -136.30 36.50 164.10 -136.30 36.50 1735 -1605 1366 -1605 1366 303 1672 303 89,250.00 0.66 LOC-STA 0.66 0.71 0.66 YES nan 1.11 1.11 Sk_om. nan nan COL 0.83 1.22 Area 1.33 Area 3.40 -2336 3.93 2.19 1.32 1.10 nan 0.83
In [112]:
csps_sorted = pd.concat([csps_inputs_sorted,deo_inputs],axis=1)
In [113]:
csps_sorted.shape
Out[113]:
(100000, 98)

1.3. Removing rows that are NA across all failure modes (in case there are any)

In [114]:
outputs = ['Panel_local_buckling (SYM.)','Panel_local_buckling (ROT.)', \
           'General_Buckling','Post-Buckling_RF','Stringer_local_buckling_RF', \
           'IDT_RF','Post-Buckling_Cut-Off','Skin_DT','SkinUnderOmega_DT', \
           'DTStringer','PlainStrength']
In [115]:
inputs = ['t', 'p0', 'p90', 'chiD1', 'chiD2', 'chiD3',  'tc', 'p0c', 'p90c', 'tw', \
          'p0w', 'p90w', 'h', 'b', 'alpha', 'Nxx', 'Nyy', 'Nxy','bf']
In [116]:
plies = ['Nbplies','Nbplies_cap','Nbplies_web']
In [117]:
csps_sorted = csps_sorted.dropna(subset=outputs,how='all')
csps_sorted.shape
Out[117]:
(100000, 98)
In [118]:
csps_sorted.dropna(subset=outputs,how='any').shape
Out[118]:
(19166, 98)

1.4. Splitting the original dataset into inputs and outputs

In [119]:
csps_outputs = csps_sorted[outputs]
csps_inputs = csps_sorted[inputs]
csps_plies = csps_sorted[plies]
In [120]:
csps_outputs.info()
<class 'pandas.core.frame.DataFrame'>
Int64Index: 100000 entries, 0 to 99999
Data columns (total 11 columns):
Panel_local_buckling (SYM.)    75911 non-null float64
Panel_local_buckling (ROT.)    77459 non-null float64
General_Buckling               79964 non-null float64
Post-Buckling_RF               56823 non-null float64
Stringer_local_buckling_RF     95907 non-null float64
IDT_RF                         49107 non-null float64
Post-Buckling_Cut-Off          93966 non-null float64
Skin_DT                        96653 non-null float64
SkinUnderOmega_DT              96653 non-null float64
DTStringer                     99999 non-null float64
PlainStrength                  96653 non-null float64
dtypes: float64(11)
memory usage: 9.2 MB
In [121]:
csps_inputs.info()
<class 'pandas.core.frame.DataFrame'>
Int64Index: 100000 entries, 0 to 99999
Data columns (total 19 columns):
t        100000 non-null float64
p0       100000 non-null float64
p90      100000 non-null float64
chiD1    100000 non-null float64
chiD2    100000 non-null float64
chiD3    100000 non-null float64
tc       100000 non-null float64
p0c      100000 non-null float64
p90c     100000 non-null float64
tw       100000 non-null float64
p0w      100000 non-null float64
p90w     100000 non-null float64
h        100000 non-null float64
b        100000 non-null float64
alpha    100000 non-null float64
Nxx      100000 non-null float64
Nyy      100000 non-null float64
Nxy      100000 non-null float64
bf       100000 non-null float64
dtypes: float64(19)
memory usage: 15.3 MB
In [122]:
csps_plies.info()
<class 'pandas.core.frame.DataFrame'>
Int64Index: 100000 entries, 0 to 99999
Data columns (total 3 columns):
Nbplies        100000 non-null int64
Nbplies_cap    100000 non-null int64
Nbplies_web    100000 non-null int64
dtypes: int64(3)
memory usage: 3.1 MB

1.5. Check if design criteria was met

In [123]:
def design_criteria(inputs):
    rules = [(1.472 <= inputs['t']).all() and (inputs['t'] <= 6.808).all(),
                (20 <= inputs['alpha']).all() and (inputs['alpha'] <= 40).all(),
                (180 <= inputs['b']).all() and (inputs['b'] <= 300).all(),
                (0 <= inputs['p0']).all() and (inputs['p0'] <= 1).all(),
                (0 <= inputs['p90']).all() and (inputs['p90'] <= 1).all(),
              #  (-1 <= inputs['chiD1']).all() and (inputs['chiD1'] <= 1).all(),
              #  (-1 <= inputs['chiD2']).all() and (inputs['chiD2'] <= 1).all(),
              #  (-1 <= inputs['chiD3']).all() and (inputs['chiD3'] <= 1).all(),
                (20 <= inputs['h']).all() and (inputs['h'] <= 50).all(),
                (1.143 <= inputs['tw']).all() and (inputs['tw'] <= 3.175).all(),
                (0 <= inputs['p0w']).all() and (inputs['p0w'] <= 1).all(),
                (0 <= inputs['p90w']).all() and (inputs['p90w'] <= 1).all(),
                (0 <= inputs['p0c']).all() and (inputs['p0c'] <= 1).all(),
                (0 <= inputs['p90c']).all() and (inputs['p90c'] <= 1).all(),
                (inputs['tc'] >= inputs['tw']).all(),
            # rule for tc?,NXX,NYY, and NXY?
            # What about BF as an input? 
             # BA and BW?
            ]
    if all(rules):
        print("Design criteria has been met!")
In [124]:
design_criteria(csps_inputs)
Design criteria has been met!
In [125]:
print(csps_inputs['chiD1'].max(),csps_inputs['chiD1'].min())
1.0000000000000002 -1.0
In [126]:
sum(csps_inputs['chiD1'] > 1)
Out[126]:
1
In [127]:
print(csps_inputs['chiD2'].max(),csps_inputs['chiD2'].min())
1.0000000000000004 -1.0000000000000002
In [128]:
sum(csps_inputs['chiD2'] > 1)
Out[128]:
118
In [129]:
sum(csps_inputs['chiD2'] < -1)
Out[129]:
1
In [130]:
print(csps_inputs['chiD3'].max(),csps_inputs['chiD3'].min())
0.9306666666666668 -0.9640000000000001

1.6. Inspecting CSPS plies relationship

In [42]:
csps_plies.describe([.9, .95, .99])
Out[42]:
Nbplies Nbplies_cap Nbplies_web
count 100,000.00 100,000.00 100,000.00
mean 22.48 29.35 17.00
std 8.37 13.43 4.63
min 8.00 9.00 9.00
50% 22.00 26.00 17.00
90% 34.00 49.00 23.00
95% 36.00 57.00 24.00
99% 37.00 70.00 25.00
max 37.00 83.00 25.00
In [43]:
csps_plies.hist()
plt.show()
/opt/soft/cdtng/tools/anaconda/3/lib/python3.6/site-packages/matplotlib/font_manager.py:1241: UserWarning: findfont: Font family ['sans-serif'] not found. Falling back to DejaVu Sans.
  (prop.get_family(), self.defaultFamily[fontext]))
/opt/soft/cdtng/tools/anaconda/3/lib/python3.6/site-packages/matplotlib/font_manager.py:1241: UserWarning: findfont: Font family ['sans-serif'] not found. Falling back to DejaVu Sans.
  (prop.get_family(), self.defaultFamily[fontext]))
In [44]:
print('Number of plies in the cap is higher or equal than in the web', ((csps_plies['Nbplies_cap'] >= csps_plies['Nbplies_web']).sum() / csps_plies.shape[0] * 100), '% of the time')
Number of plies in the cap is higher or equal than in the web 100.0 % of the time
In [45]:
print('Number of plies in the cap is higher than in the web', ((csps_plies['Nbplies_cap'] > csps_plies['Nbplies_web']).sum() / csps_plies.shape[0] * 100), '% of the time')
Number of plies in the cap is higher than in the web 95.746 % of the time
In [46]:
print('Number of plies in the cap is higher or equal than in the skin', ((csps_plies['Nbplies_cap'] >= csps_plies['Nbplies']).sum() / csps_plies.shape[0] * 100), '% of the time')
Number of plies in the cap is higher or equal than in the skin 65.16 % of the time
In [47]:
print('Number of plies in the cap is higher than in the skin', ((csps_plies['Nbplies_cap'] > csps_plies['Nbplies']).sum() / csps_plies.shape[0] * 100), '% of the time')
Number of plies in the cap is higher than in the skin 62.471 % of the time
In [48]:
plot_correlation(csps_plies, plies)
In [49]:
sns.pairplot(csps_plies);
plt.show();
/opt/soft/cdtng/tools/anaconda/3/lib/python3.6/site-packages/matplotlib/font_manager.py:1241: UserWarning: findfont: Font family ['sans-serif'] not found. Falling back to DejaVu Sans.
  (prop.get_family(), self.defaultFamily[fontext]))

1.7. Inspecting inputs

In [50]:
csps_inputs.describe([.9, .95, .99])
Out[50]:
t p0 p90 chiD1 chiD2 chiD3 tc p0c p90c tw p0w p90w h b alpha Nxx Nyy Nxy bf
count 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00
mean 4.14 0.31 0.30 -0.00 0.06 0.00 3.73 0.53 0.22 2.16 0.33 0.32 32.70 250.07 28.54 0.23 -0.19 -0.11 26.64
std 1.54 0.18 0.18 0.36 0.42 0.33 1.71 0.19 0.17 0.59 0.24 0.24 8.29 32.51 5.52 199.70 282.80 200.36 10.83
min 1.47 0.00 0.00 -1.00 -1.00 -0.96 1.14 0.00 0.00 1.14 0.00 0.00 20.00 180.00 20.00 -399.99 -400.00 -399.96 10.00
50% 4.05 0.29 0.28 -0.00 0.06 0.00 3.30 0.57 0.18 2.16 0.29 0.28 31.72 253.83 27.94 0.07 -0.91 -0.10 25.37
90% 6.26 0.56 0.55 0.48 0.63 0.43 6.22 0.77 0.46 2.92 0.69 0.67 45.04 291.35 36.72 284.02 380.42 284.62 42.69
95% 6.62 0.62 0.62 0.58 0.72 0.53 7.24 0.81 0.56 3.05 0.78 0.76 47.37 295.72 38.25 339.24 395.08 340.44 45.96
99% 6.81 0.73 0.73 0.73 0.87 0.70 8.89 0.89 0.73 3.17 0.90 0.90 49.46 299.16 39.62 387.12 399.81 387.91 49.08
max 6.81 1.00 1.00 1.00 1.00 0.93 10.54 1.00 1.00 3.17 1.00 1.00 50.00 300.00 40.00 399.98 400.00 400.00 50.00
In [51]:
csps_inputs.hist()
plt.show()
In [52]:
plot_correlation(csps_inputs, inputs)
In [54]:
sns.pairplot(csps_inputs)
plt.show()

1.7.1. Analysing relationship between number of plies at different degree angles in cap and web

In [55]:
# If you run this, please make sure to do the copy to the original csps_sorted df
csps_sorted['nbplies_0'] = round(csps_sorted['p0'] * csps_sorted['Nbplies'],0)
csps_sorted['nbplies_90'] = round(csps_sorted['p90'] * csps_sorted['Nbplies'],0)
csps_sorted['nbplies_cap_0'] = round(csps_sorted['p0c'] * csps_sorted['Nbplies_cap'],0)
csps_sorted['nbplies_cap_90'] = round(csps_sorted['p90c'] * csps_sorted['Nbplies_cap'],0)
csps_sorted['nbplies_web_0'] = round(csps_sorted['p0w'] * csps_sorted['Nbplies_web'],0)
csps_sorted['nbplies_web_90'] = round(csps_sorted['p90w'] * csps_sorted['Nbplies_web'],0)
In [56]:
print('Number of plies at 0 degree in the cap is higher or equal than in the web :',(csps_sorted['nbplies_cap_0'] >= csps_sorted['nbplies_web_0']).sum() / csps_sorted.shape[0])
Number of plies at 0 degree in the cap is higher or equal than in the web : 0.9796
In [57]:
print('Ratio of plies at 0 degree in the cap is higher or equal than in the web :',(csps_sorted['p0c'] >= csps_sorted['p0w']).sum() / csps_sorted.shape[0])
Ratio of plies at 0 degree in the cap is higher or equal than in the web : 0.91284
In [58]:
index = csps_sorted['p0c'] < csps_sorted['p0w']
csps_0 = csps_sorted[index]
csps_0.head(20)
Out[58]:
Test_case_ID Load_Case_ID Left_Panel_length Left_Panel_width Left_Panel_thickness Left_Panel_curvature_radius Right_Panel_length Right_Panel_width Right_Panel_thickness Right_Panel_curvature_radius Stringer_Cross_Section Super-Stringer_Cross_Section Skin_width_below_omega Stringer axial stiffness Total axial stiffness Total bending stiffness NX_Left_LFX NY_Left_LFX NXY_Left_LFX NX_Right_LFX NY_Right_LFX NXY_Right_LFX NX_Left_NLF NY_Left_NLF NXY_Left_NLF NX_Right_NLF NY_Right_NLF NXY_Right_NLF EPS_X_LFX EPS_Y_Left_LFX EPS_XY_Left_LFX EPS_Y_Right_LFX EPS_XY_Right_LFX EPS_XY_STR_LFX EPS_X_NLF EPS_XY_STR_NLF PX_TOT Buckling_RF Buckling_Mode Panel_local_buckling (SYM.) Panel_local_buckling (ROT.) Panel_local_buckling Hoop_Driven General_Buckling Post-Buckling_RF Stringer_local_buckling_RF Stringer_local_buckling_Location Skin_inter-rivet_buckling_RF IDT_RF IDT_Type ... SkinUnderOmega_DT_Criterion DTStringer Omega CAI Allowable PlainStrength NotchSensitivity Reparability_Panel Reparability_Stringer Drain_Hole Critical_RF Nbplies chiA1 chiA2 chiD1 chiD2 chiD3 p0 p90 t tc Nbplies_cap p0c p90c chiA1c chiA2c tw Nbplies_web p0w p90w chiA1w chiA2w h ba bf ra rf alpha b ro theta phi Nxx Nyy Nxy Fn nbplies_0 nbplies_90 nbplies_cap_0 nbplies_cap_90 nbplies_web_0 nbplies_web_90
12 TC13 LC13 635.00 222.19 3.86 2,827.29 635.00 222.19 3.86 2,827.29 577.80 1,435.45 53.98 60,534,112.00 107,337,064.00 8,533,966,336.00 -91.60 -385.50 5.20 -91.60 -385.50 5.20 -91.60 -385.50 5.20 -91.60 -385.50 5.20 -54 -1254 77 -1254 77 16 -54 16 -23,676.00 0.89 GEN-STA 1.19 1.06 1.06 YES 0.89 nan 4.67 Sk_om. nan 6.52 COL ... Area 10.58 -2336 5.05 2.56 2.15 4.03 nan 0.89 21 -0.14 0.24 -0.35 -0.24 -0.32 0.24 0.38 3.86 8.76 69 0.57 0.20 0.36 0.54 3.17 25 0.68 0.16 0.52 0.68 23.52 29 27.19 4 8 36.41 222.19 0.36 -1.52 -1.30 -106.56 -385.51 5.23 -23,675.54 5.00 8.00 39.00 14.00 17.00 4.00
25 TC26 LC26 635.00 236.72 4.42 2,827.29 635.00 236.72 4.42 2,827.29 344.12 1,390.42 49.82 44,653,404.00 115,997,616.00 16,546,280,448.00 101.00 -139.40 316.80 101.00 -139.40 316.80 101.00 -139.40 316.80 101.00 -139.40 316.80 518 -812 3290 -812 3290 450 518 450 47,483.00 1.55 GEN-STA 1.90 1.62 1.62 YES 1.55 nan 12.86 Sk_om. nan nan COL ... Area 8.74 -2336 3.39 2.22 1.47 nan nan 1.47 24 0.17 0.00 -0.28 -0.29 0.16 0.33 0.17 4.42 4.83 38 0.74 0.16 0.58 0.79 1.91 15 0.87 0.13 0.73 1.00 33.95 29 22.03 4 8 25.23 236.72 0.41 0.56 -0.36 200.59 -139.37 316.77 47,483.33 8.00 4.00 28.00 6.00 13.00 2.00
39 TC40 LC40 635.00 280.55 4.23 2,827.29 635.00 280.55 4.23 2,827.29 415.17 1,601.90 77.70 11,247,103.00 71,701,080.00 3,591,699,712.00 25.70 -396.70 27.00 25.70 -396.70 27.00 -37.00 -414.50 27.00 -37.00 -414.50 27.00 447 -1176 387 -1176 387 186 171 186 12,276.00 0.51 GEN-STA 0.79 0.80 0.79 YES 0.51 nan 2.30 Sk_om. nan nan COL ... Area 12.17 -2336 5.38 2.80 2.04 3.57 nan 0.51 23 -0.22 0.30 0.08 -0.01 -0.37 0.22 0.43 4.23 2.67 21 0.05 0.57 -0.52 0.24 2.54 20 0.05 0.50 -0.45 0.10 27.79 29 43.52 4 8 36.05 280.55 0.98 1.02 -1.44 43.76 -396.68 26.96 12,276.45 5.00 10.00 1.00 12.00 1.00 10.00
43 TC44 LC44 635.00 293.67 5.89 2,827.29 635.00 293.67 5.89 2,827.29 318.01 2,047.73 44.94 41,419,368.00 209,182,176.00 15,141,874,688.00 -242.50 -123.10 252.10 -242.50 -123.10 252.10 -242.50 -123.10 252.10 -242.50 -123.10 252.10 -315 -494 2460 -494 2460 356 -315 356 -83,726.00 1.33 LOC-STA 1.88 1.36 1.33 YES 1.38 2.03 8.32 Web nan 2.03 COL ... Area 5.31 -2805 3.61 2.13 1.39 nan nan 1.33 32 0.50 0.25 0.06 -0.27 -0.05 0.56 0.06 5.89 4.57 36 0.78 0.11 0.67 0.78 1.78 14 0.86 0.14 0.71 1.00 28.26 29 26.64 4 8 21.37 293.67 0.38 -0.85 -0.31 -285.10 -123.14 252.10 -83,726.39 18.00 2.00 28.00 4.00 12.00 2.00
59 TC60 LC60 635.00 225.23 1.84 2,827.29 635.00 225.23 1.84 2,827.29 563.30 977.72 55.93 67,792,392.00 76,399,544.00 17,056,992,256.00 75.50 310.80 207.70 75.50 310.80 207.70 75.50 310.80 207.70 75.50 310.80 207.70 -661 5025 5463 5025 5463 340 -661 340 -32,092.00 9.66 STR nan 83.69 nan NaN 21.35 9.66 9.66 Web nan 7.48 COL ... Area 3.46 -2336 1.84 1.05 0.67 1.56 nan 0.67 10 0.00 -0.60 0.24 -0.50 -0.69 0.10 0.10 1.84 7.87 62 0.65 0.10 0.55 0.48 2.79 22 0.82 0.18 0.64 1.00 38.81 29 24.45 4 8 25.90 225.23 0.35 -0.60 0.89 -142.48 310.76 207.68 -32,091.97 1.00 1.00 40.00 6.00 18.00 4.00
87 TC88 LC88 635.00 298.01 2.58 2,827.29 635.00 298.01 2.58 2,827.29 362.82 1,131.69 27.83 41,831,340.00 88,158,376.00 6,372,982,784.00 -196.50 -239.30 -260.90 -196.50 -239.30 -260.90 -375.20 -258.00 -274.90 -375.20 -258.00 -274.90 -58 -581 -8199 -581 -8199 -1590 -749 -1590 -55,483.00 0.12 LOC-STA 0.13 0.12 0.12 YES 0.24 1.96 3.51 Sk_om. nan 1.96 COL ... Area 2.18 -2336 1.09 0.68 0.64 1.32 nan 0.15 14 0.36 0.57 0.33 0.34 0.33 0.57 0.21 2.58 6.48 51 0.61 0.16 0.45 0.53 2.79 22 0.73 0.09 0.64 0.64 27.76 29 10.43 4 8 22.91 298.01 0.44 -2.52 -0.64 -186.18 -239.26 -260.94 -55,483.15 8.00 3.00 31.00 8.00 16.00 2.00
93 TC94 LC94 635.00 292.38 5.15 2,827.29 635.00 292.38 5.15 2,827.29 462.13 1,967.89 61.54 59,486,944.00 204,922,912.00 17,906,550,784.00 1.80 -310.00 -252.20 1.80 -310.00 -252.20 1.80 -310.00 -252.20 1.80 -310.00 -252.20 93 -1091 -5305 -1091 -5305 -2194 93 -2194 4,985.00 1.03 LOC-STA 1.04 1.03 1.03 YES 1.15 6.51 6.51 Sk_om. nan nan COL ... Area 2.73 -2805 1.90 1.36 1.30 1.76 nan 1.03 28 0.29 0.71 -0.13 0.26 -0.03 0.57 0.29 5.15 3.94 31 0.81 0.06 0.74 0.74 2.67 21 0.81 0.00 0.81 0.62 26.36 29 47.30 4 8 20.72 292.38 0.67 3.07 -0.89 17.05 -309.98 -252.23 4,985.22 16.00 8.00 25.00 2.00 17.00 0.00
120 TC121 LC121 635.00 257.23 5.52 2,827.29 635.00 257.23 5.52 2,827.29 611.13 2,031.04 59.64 76,787,984.00 164,963,760.00 40,482,533,376.00 -137.30 -176.50 332.40 -137.30 -176.50 332.40 -137.30 -176.50 332.40 -137.30 -176.50 332.40 1 -944 2177 -944 2177 600 1 600 -34,808.00 1.02 LOC-STA 1.02 1.14 1.02 YES 1.19 4.84 4.84 Sk_om. nan 17.97 COL ... Area 7.99 -2805 3.60 1.86 1.10 2.91 nan 1.02 30 0.33 -0.33 0.59 0.18 0.24 0.33 0.00 5.52 5.97 47 0.66 0.17 0.49 0.66 3.17 25 0.84 0.00 0.84 0.68 43.35 29 28.40 4 8 23.77 257.23 0.52 -0.39 -0.46 -135.32 -176.55 332.44 -34,807.69 10.00 0.00 31.00 8.00 21.00 0.00
131 TC132 LC132 635.00 262.85 2.94 2,827.29 635.00 262.85 2.94 2,827.29 398.49 1,171.27 62.57 47,989,652.00 65,436,160.00 16,679,764,992.00 -11.70 -355.60 161.00 -11.70 -355.60 161.00 -31.80 -371.10 155.30 -31.80 -371.10 155.30 561 -1810 2523 -1810 2523 1341 351 1341 22,951.00 0.28 LOC-STA 0.28 0.33 0.28 YES nan 1.08 1.08 Sk_om. nan nan COL ... Area 3.60 -2197 2.40 1.15 1.21 2.16 nan 0.32 16 -0.38 -0.25 -0.22 -0.57 0.41 0.00 0.38 2.94 2.41 19 0.74 0.11 0.63 0.68 2.29 18 0.78 0.06 0.72 0.67 41.01 29 34.02 4 8 22.21 262.85 0.99 0.50 -1.10 87.31 -355.62 160.97 22,950.62 0.00 6.00 14.00 2.00 14.00 1.00
153 TC154 LC154 635.00 298.24 3.86 2,827.29 635.00 298.24 3.86 2,827.29 318.74 1,469.95 80.47 44,214,124.00 75,910,264.00 23,215,155,200.00 163.70 -28.20 2.40 163.70 -28.20 2.40 163.70 -28.20 2.40 163.70 -28.20 2.40 1581 -311 36 -311 36 13 1581 13 118,998.00 12.83 GEN-STA 13.22 18.04 13.22 YES 12.83 nan 18.83 Sk_om. nan nan COL ... Area 3.79 -2311 5.32 3.31 3.53 nan nan 3.53 21 -0.52 0.24 -0.24 -0.53 -0.18 0.05 0.57 3.86 2.67 21 0.90 0.10 0.81 1.00 1.40 11 0.91 0.09 0.82 1.00 40.60 29 45.20 4 8 25.29 298.24 0.53 1.56 -0.07 399.00 -28.20 2.45 118,997.76 1.00 12.00 19.00 2.00 10.00 1.00
155 TC156 LC156 635.00 256.99 2.39 2,827.29 635.00 256.99 2.39 2,827.29 222.63 836.84 30.75 7,436,447.00 62,342,904.00 1,534,889,216.00 49.80 -67.20 -386.30 49.80 -67.20 -386.30 -62.70 -87.80 -398.30 -62.70 -87.80 -398.30 775 2553 -9731 2553 -9731 -3429 327 -3429 20,379.00 0.24 GEN-STA 0.37 0.36 0.36 NO 0.24 nan 8.66 Sk_om. nan nan COL ... Area 1.17 -2296 1.14 0.57 0.41 1.50 nan 0.24 13 0.54 0.08 0.16 -0.69 0.45 0.54 0.00 2.39 1.91 15 0.13 0.27 -0.13 -0.20 1.78 14 0.14 0.29 -0.14 -0.14 28.41 29 11.45 4 8 22.17 256.99 0.99 2.94 -0.17 79.30 -67.18 -386.26 20,379.32 7.00 0.00 2.00 4.00 2.00 4.00
168 TC169 LC169 635.00 254.18 5.34 2,827.29 635.00 254.18 5.34 2,827.29 475.98 1,833.30 59.40 49,862,764.00 134,615,344.00 18,378,975,232.00 -214.80 20.90 203.30 -214.80 20.90 203.30 -214.80 20.90 203.30 -214.80 20.90 203.30 -654 153 2738 153 2738 1033 -654 1033 -87,407.00 3.20 LOC-STA 3.20 3.47 3.20 NO 3.78 4.04 12.47 Web nan 4.04 COL ... Area 3.44 -2805 3.91 2.67 1.91 2.53 nan 1.91 29 -0.10 0.45 -0.46 0.45 0.25 0.31 0.41 5.34 5.46 43 0.63 0.19 0.44 0.63 2.79 22 0.64 0.00 0.64 0.27 34.27 29 21.13 4 8 33.26 254.18 0.50 -1.04 0.05 -343.88 20.85 203.26 -87,406.94 9.00 12.00 27.00 8.00 14.00 0.00
171 TC172 LC172 635.00 262.68 5.15 2,827.29 635.00 262.68 5.15 2,827.29 418.98 1,771.78 40.13 46,476,644.00 118,238,936.00 12,322,443,264.00 -59.80 -399.60 -17.60 -59.80 -399.60 -17.60 -162.70 -438.10 -17.60 -162.70 -438.10 -17.60 329 -1381 -141 -1381 -141 -21 5 -21 643.00 0.65 LOC-STA 0.79 0.65 0.65 YES 0.94 7.96 7.96 Sk_om. nan nan COL ... Area 18.19 -2805 4.60 2.62 1.85 4.52 nan 0.65 28 0.00 -0.14 0.23 0.32 -0.28 0.21 0.21 5.15 6.35 50 0.60 0.24 0.36 0.68 2.54 20 0.75 0.15 0.60 0.80 28.89 29 22.64 4 8 21.67 262.68 0.40 3.00 -1.53 2.45 -399.60 -17.62 643.04 6.00 6.00 30.00 12.00 15.00 3.00
172 TC173 LC173 635.00 270.18 2.21 2,827.29 635.00 270.18 2.21 2,827.29 393.42 990.52 57.32 18,122,912.00 39,226,848.00 11,696,522,240.00 69.10 342.10 104.90 69.10 342.10 104.90 69.10 342.10 104.90 69.10 342.10 104.90 1298 5178 7431 5178 7431 1350 1298 1350 48,283.00 173.20 STR nan nan nan NaN nan 173.20 173.20 NaN nan nan NaN ... Area 3.02 -2311 1.73 1.03 0.97 1.82 nan 0.73 12 0.00 -0.33 0.06 0.30 -0.35 0.17 0.17 2.21 2.67 21 0.00 0.00 -0.14 0.62 2.16 17 0.18 0.53 -0.35 0.41 49.52 29 20.14 4 8 22.92 270.18 0.79 1.04 1.03 178.71 342.14 104.89 48,283.00 2.00 2.00 0.00 0.00 3.00 9.00
196 TC197 LC197 635.00 193.77 4.05 2,827.29 635.00 193.77 4.05 2,827.29 221.84 1,006.61 32.83 19,212,974.00 93,969,664.00 2,521,042,688.00 -301.20 -168.20 82.80 -301.20 -168.20 82.80 -359.50 -177.20 82.80 -359.50 -177.20 82.80 -588 -904 1203 -904 1203 547 -729 547 -68,465.00 0.66 GEN-STA 1.33 0.93 0.93 YES 0.66 nan 6.11 Sk_om. nan 0.72 COL ... Area 2.61 -2024 4.20 2.40 1.77 nan nan 0.66 22 0.45 0.27 0.23 -0.48 -0.16 0.55 0.09 4.05 2.03 16 0.50 0.44 0.06 0.88 1.91 15 0.53 0.40 0.13 0.87 21.04 29 17.79 4 8 24.56 193.77 0.98 -1.34 -0.43 -353.33 -168.24 82.77 -68,465.05 12.00 2.00 8.00 7.00 8.00 6.00
211 TC212 LC212 635.00 247.21 4.97 2,827.29 635.00 247.21 4.97 2,827.29 489.79 1,718.42 54.67 46,851,988.00 107,383,160.00 22,889,904,128.00 56.70 394.60 62.20 56.70 394.60 62.20 56.70 394.60 62.20 56.70 394.60 62.20 -373 1388 500 1388 500 216 -373 216 -4,927.00 20.13 STR nan nan nan NaN 365.40 20.13 20.13 Web nan 85.74 COL ... Area 6.10 -2336 8.85 5.10 1.92 3.37 nan 1.92 27 -0.04 -0.19 -0.07 -0.50 -0.55 0.19 0.22 4.97 3.05 24 0.50 0.33 0.17 0.67 2.92 23 0.57 0.26 0.30 0.65 47.99 29 11.23 4 8 27.53 247.21 0.98 -0.31 1.41 -19.93 394.62 62.25 -4,926.88 5.00 6.00 12.00 8.00 13.00 6.00
234 TC235 LC235 635.00 292.44 5.15 2,827.29 635.00 292.44 5.15 2,827.29 217.06 1,723.13 46.25 15,080,203.00 90,379,704.00 4,380,718,592.00 -147.50 -302.50 -228.10 -147.50 -302.50 -228.10 -340.50 -383.40 -228.10 -340.50 -383.40 -228.10 143 -1358 -1509 -1358 -1509 -693 -415 -693 -37,523.00 0.53 LOC-STA 0.64 0.53 0.53 YES 0.53 2.29 6.24 Sk_om. nan 2.29 COL ... Area 3.63 -1852 3.59 1.86 1.03 2.87 nan 0.53 28 0.14 -0.43 0.08 -0.82 -0.48 0.21 0.07 5.15 1.65 13 0.38 0.46 -0.08 0.69 1.52 12 0.42 0.42 -0.00 0.67 29.18 29 24.28 4 8 23.43 292.44 0.94 -2.63 -0.86 -128.31 -302.48 -228.13 -37,522.77 6.00 2.00 5.00 6.00 5.00 5.00
260 TC261 LC261 635.00 299.82 2.21 2,827.29 635.00 299.82 2.21 2,827.29 382.37 1,044.97 40.70 52,641,732.00 110,238,112.00 7,051,487,744.00 -136.60 99.00 -222.20 -136.60 99.00 -222.20 -141.40 98.10 -222.00 -141.40 98.10 -222.00 -1030 1280 -5293 1280 -5293 -715 -1053 -715 -95,208.00 0.30 LOC-STA 0.30 0.32 0.30 NO 0.50 1.06 4.73 Sk_om. nan 1.06 COL ... Area 1.93 -2336 2.29 1.32 1.01 1.27 nan 0.41 12 0.42 0.17 0.28 -0.11 -0.18 0.50 0.08 2.21 5.33 42 0.67 0.14 0.52 0.62 2.54 20 1.00 0.00 1.00 1.00 23.47 29 24.71 4 8 24.70 299.82 0.48 -2.18 0.25 -317.55 98.98 -222.19 -95,208.35 6.00 1.00 28.00 6.00 20.00 0.00
308 TC309 LC309 635.00 200.21 4.42 2,827.29 635.00 200.21 4.42 2,827.29 458.88 1,343.81 51.79 48,507,624.00 137,102,784.00 22,390,401,024.00 31.90 4.30 397.40 31.90 4.30 397.40 31.90 4.30 397.40 31.90 4.30 397.40 68 -1 5648 -1 5648 774 68 774 9,071.00 2.58 GEN-STA 2.94 3.00 2.94 NO 2.58 nan 15.79 Sk_om. nan nan COL ... Energy 7.71 -2336 2.29 1.48 1.22 2.04 nan 1.22 24 0.50 0.33 0.37 -0.26 0.14 0.58 0.08 4.42 8.13 64 0.62 0.12 0.50 0.50 2.54 20 0.65 0.10 0.55 0.50 39.82 29 12.29 4 8 29.66 200.21 0.32 0.11 0.01 45.31 4.30 397.40 9,070.89 14.00 2.00 40.00 8.00 13.00 2.00
322 TC323 LC323 635.00 252.25 4.97 2,827.29 635.00 252.25 4.97 2,827.29 350.45 1,604.13 40.96 45,679,284.00 128,671,456.00 7,219,317,248.00 -123.40 -171.60 317.10 -123.40 -171.60 317.10 -123.40 -171.60 317.10 -123.40 -171.60 317.10 -281 -415 4362 -415 4362 560 -281 560 -43,703.00 0.97 GEN-STA 1.72 1.14 1.14 YES 0.97 nan 12.29 Sk_om. nan 2.62 COL ... Area 5.78 -2336 2.52 1.76 1.34 7.17 nan 0.97 27 -0.04 0.41 -0.23 -0.30 -0.06 0.33 0.37 4.97 5.46 43 0.63 0.19 0.44 0.63 2.54 20 0.90 0.10 0.80 1.00 24.47 29 14.32 4 8 33.80 252.25 0.46 -0.50 -0.44 -173.26 -171.58 317.09 -43,703.37 9.00 10.00 27.00 8.00 18.00 2.00

20 rows × 104 columns

In [59]:
print('Number of plies at 90 degree in the web is higher or equal than in the cap :',(csps_sorted['nbplies_cap_90'] <= csps_sorted['nbplies_web_90']).sum() / csps_sorted.shape[0])
Number of plies at 90 degree in the web is higher or equal than in the cap : 0.72093
In [60]:
print('Ratio of plies at 90 degree in the web is higher or equal than in the cap :',(csps_sorted['p90c'] <= csps_sorted['p90w']).sum() / csps_sorted.shape[0])
Ratio of plies at 90 degree in the web is higher or equal than in the cap : 0.8837
In [61]:
index_2 = csps_sorted['p90c'] > csps_sorted['p90w']
csps_90 = csps_sorted[index_2]
csps_90.head(20)
Out[61]:
Test_case_ID Load_Case_ID Left_Panel_length Left_Panel_width Left_Panel_thickness Left_Panel_curvature_radius Right_Panel_length Right_Panel_width Right_Panel_thickness Right_Panel_curvature_radius Stringer_Cross_Section Super-Stringer_Cross_Section Skin_width_below_omega Stringer axial stiffness Total axial stiffness Total bending stiffness NX_Left_LFX NY_Left_LFX NXY_Left_LFX NX_Right_LFX NY_Right_LFX NXY_Right_LFX NX_Left_NLF NY_Left_NLF NXY_Left_NLF NX_Right_NLF NY_Right_NLF NXY_Right_NLF EPS_X_LFX EPS_Y_Left_LFX EPS_XY_Left_LFX EPS_Y_Right_LFX EPS_XY_Right_LFX EPS_XY_STR_LFX EPS_X_NLF EPS_XY_STR_NLF PX_TOT Buckling_RF Buckling_Mode Panel_local_buckling (SYM.) Panel_local_buckling (ROT.) Panel_local_buckling Hoop_Driven General_Buckling Post-Buckling_RF Stringer_local_buckling_RF Stringer_local_buckling_Location Skin_inter-rivet_buckling_RF IDT_RF IDT_Type ... SkinUnderOmega_DT_Criterion DTStringer Omega CAI Allowable PlainStrength NotchSensitivity Reparability_Panel Reparability_Stringer Drain_Hole Critical_RF Nbplies chiA1 chiA2 chiD1 chiD2 chiD3 p0 p90 t tc Nbplies_cap p0c p90c chiA1c chiA2c tw Nbplies_web p0w p90w chiA1w chiA2w h ba bf ra rf alpha b ro theta phi Nxx Nyy Nxy Fn nbplies_0 nbplies_90 nbplies_cap_0 nbplies_cap_90 nbplies_web_0 nbplies_web_90
1 TC2 LC2 635.00 273.75 4.97 2,827.29 635.00 273.75 4.97 2,827.29 470.49 1,831.03 77.12 49,622,784.00 194,038,464.00 46,049,427,456.00 -15.80 253.80 303.30 -15.80 253.80 303.30 -15.80 253.80 303.30 -15.80 253.80 303.30 -240 1770 4172 1770 4172 1038 -240 1038 -16,513.00 8.15 STR 9.71 9.46 9.46 NO 13.09 8.15 8.15 Web nan 31.58 COL ... Area 4.96 -2336 3.35 2.01 1.34 2.21 nan 1.34 27 0.56 0.41 0.35 -0.30 -0.11 0.63 0.07 4.97 5.71 45 0.64 0.18 0.47 0.64 2.03 16 0.62 0.06 0.56 0.38 49.06 29 23.75 4 8 30.62 273.75 0.37 -0.20 0.69 -60.32 253.76 303.26 -16,513.35 17.00 2.00 29.00 8.00 10.00 1.00
12 TC13 LC13 635.00 222.19 3.86 2,827.29 635.00 222.19 3.86 2,827.29 577.80 1,435.45 53.98 60,534,112.00 107,337,064.00 8,533,966,336.00 -91.60 -385.50 5.20 -91.60 -385.50 5.20 -91.60 -385.50 5.20 -91.60 -385.50 5.20 -54 -1254 77 -1254 77 16 -54 16 -23,676.00 0.89 GEN-STA 1.19 1.06 1.06 YES 0.89 nan 4.67 Sk_om. nan 6.52 COL ... Area 10.58 -2336 5.05 2.56 2.15 4.03 nan 0.89 21 -0.14 0.24 -0.35 -0.24 -0.32 0.24 0.38 3.86 8.76 69 0.57 0.20 0.36 0.54 3.17 25 0.68 0.16 0.52 0.68 23.52 29 27.19 4 8 36.41 222.19 0.36 -1.52 -1.30 -106.56 -385.51 5.23 -23,675.54 5.00 8.00 39.00 14.00 17.00 4.00
19 TC20 LC20 635.00 291.56 5.89 2,827.29 635.00 291.56 5.89 2,827.29 241.38 1,958.67 53.79 14,863,481.00 152,163,888.00 5,053,782,528.00 41.10 315.30 243.40 41.10 315.30 243.40 41.10 315.30 243.40 41.10 315.30 243.40 -36 846 3180 846 3180 1393 -36 1393 10,528.00 19.57 GEN-STA 34.80 27.02 27.02 NO 19.57 nan 26.67 Web nan nan COL ... Area 4.25 -2541 3.90 2.72 1.45 2.63 nan 1.45 32 0.13 0.50 0.39 0.10 0.21 0.44 0.31 5.89 3.17 25 0.60 0.08 0.52 0.36 1.52 12 0.17 0.00 0.17 -0.67 21.17 29 25.31 4 8 37.34 291.56 0.48 0.15 0.91 36.11 315.34 243.43 10,528.11 14.00 10.00 15.00 2.00 2.00 0.00
25 TC26 LC26 635.00 236.72 4.42 2,827.29 635.00 236.72 4.42 2,827.29 344.12 1,390.42 49.82 44,653,404.00 115,997,616.00 16,546,280,448.00 101.00 -139.40 316.80 101.00 -139.40 316.80 101.00 -139.40 316.80 101.00 -139.40 316.80 518 -812 3290 -812 3290 450 518 450 47,483.00 1.55 GEN-STA 1.90 1.62 1.62 YES 1.55 nan 12.86 Sk_om. nan nan COL ... Area 8.74 -2336 3.39 2.22 1.47 nan nan 1.47 24 0.17 0.00 -0.28 -0.29 0.16 0.33 0.17 4.42 4.83 38 0.74 0.16 0.58 0.79 1.91 15 0.87 0.13 0.73 1.00 33.95 29 22.03 4 8 25.23 236.72 0.41 0.56 -0.36 200.59 -139.37 316.77 47,483.33 8.00 4.00 28.00 6.00 13.00 2.00
30 TC31 LC31 635.00 299.53 5.89 2,827.29 635.00 299.53 5.89 2,827.29 449.42 2,213.65 70.56 43,610,956.00 157,855,360.00 35,804,774,400.00 -217.80 226.30 72.30 -217.80 226.30 72.30 -217.80 226.30 72.30 -217.80 226.30 72.30 -711 728 705 728 705 316 -711 316 -96,396.00 5.27 LOC-STA 5.27 5.57 5.27 NO 11.89 6.18 6.57 Web nan 6.18 COL ... Area 3.43 -2483 7.64 5.04 2.18 1.67 nan 1.67 32 0.00 0.25 -0.52 0.59 0.09 0.31 0.31 5.89 3.05 24 0.67 0.17 0.50 0.67 2.29 18 0.56 0.11 0.44 0.33 46.84 29 33.59 4 8 24.14 299.53 0.73 -1.35 0.60 -321.82 226.29 72.27 -96,395.57 10.00 10.00 16.00 4.00 10.00 2.00
39 TC40 LC40 635.00 280.55 4.23 2,827.29 635.00 280.55 4.23 2,827.29 415.17 1,601.90 77.70 11,247,103.00 71,701,080.00 3,591,699,712.00 25.70 -396.70 27.00 25.70 -396.70 27.00 -37.00 -414.50 27.00 -37.00 -414.50 27.00 447 -1176 387 -1176 387 186 171 186 12,276.00 0.51 GEN-STA 0.79 0.80 0.79 YES 0.51 nan 2.30 Sk_om. nan nan COL ... Area 12.17 -2336 5.38 2.80 2.04 3.57 nan 0.51 23 -0.22 0.30 0.08 -0.01 -0.37 0.22 0.43 4.23 2.67 21 0.05 0.57 -0.52 0.24 2.54 20 0.05 0.50 -0.45 0.10 27.79 29 43.52 4 8 36.05 280.55 0.98 1.02 -1.44 43.76 -396.68 26.96 12,276.45 5.00 10.00 1.00 12.00 1.00 10.00
66 TC67 LC67 635.00 209.77 6.62 2,827.29 635.00 209.77 6.62 2,827.29 378.43 1,767.11 35.49 45,558,308.00 180,113,984.00 9,464,906,752.00 -11.20 356.20 -170.60 -11.20 356.20 -170.60 -11.20 356.20 -170.60 -11.20 356.20 -170.60 -236 1526 -1617 1526 -1617 -650 -236 -650 -13,304.00 36.59 GEN-STA nan nan nan NaN 36.59 nan 112.20 Web nan 13.12 COL ... Area 7.29 -2805 6.34 4.14 1.63 3.61 nan 1.63 36 0.44 0.33 0.08 -0.09 -0.30 0.56 0.11 6.62 4.95 39 0.74 0.15 0.59 0.79 2.92 23 0.74 0.09 0.65 0.65 24.39 29 16.80 4 8 27.38 209.77 0.60 -2.79 1.10 -63.42 356.18 -170.63 -13,304.14 20.00 4.00 29.00 6.00 17.00 2.00
68 TC69 LC69 635.00 224.77 2.02 2,827.29 635.00 224.77 2.02 2,827.29 236.24 690.28 26.19 24,072,916.00 36,575,700.00 1,631,270,144.00 21.60 -304.50 -235.80 21.60 -304.50 -235.80 10.40 -310.70 -233.40 10.40 -310.70 -233.40 785 -3062 -5235 -3062 -5235 -2006 664 -2006 24,280.00 0.17 GEN-STA 0.28 0.26 0.26 YES 0.17 nan 3.98 Sk_om. nan nan COL ... Area 2.48 -2254 1.57 0.86 0.74 1.23 nan 0.17 11 -0.18 -0.27 -0.52 0.36 -0.01 0.09 0.27 2.02 2.54 20 0.65 0.25 0.40 0.80 2.16 17 0.65 0.24 0.41 0.76 20.64 29 11.80 4 8 24.88 224.77 0.86 2.71 -0.87 108.02 -304.48 -235.84 24,280.13 1.00 3.00 13.00 5.00 11.00 4.00
73 TC74 LC74 635.00 289.45 4.60 2,827.29 635.00 289.45 4.60 2,827.29 749.31 2,080.78 87.11 58,218,664.00 106,592,880.00 43,004,375,040.00 19.70 399.40 -15.40 19.70 399.40 -15.40 19.70 399.40 -15.40 19.70 399.40 -15.40 -214 875 -217 875 -217 -66 -214 -66 -4,574.00 87.19 STR nan nan nan NaN nan 87.19 87.19 NaN nan nan NaN ... Area 10.86 -2336 15.59 8.39 2.18 3.92 nan 2.18 25 -0.44 0.36 -0.44 0.76 -0.06 0.12 0.56 4.60 7.87 62 0.65 0.10 0.55 0.48 3.17 25 0.28 0.08 0.20 -0.28 47.13 29 30.23 4 8 34.41 289.45 0.40 -2.34 1.52 -15.80 399.39 -15.42 -4,573.93 3.00 14.00 40.00 6.00 7.00 2.00
75 TC76 LC76 635.00 236.95 3.50 2,827.29 635.00 236.95 3.50 2,827.29 512.30 1,341.62 63.87 22,115,942.00 67,875,192.00 17,925,732,352.00 -164.70 -240.20 -293.90 -164.70 -240.20 -293.90 -164.70 -240.20 -293.90 -164.70 -240.20 -293.90 183 -580 -2949 -580 -2949 -1385 183 -1385 -29,857.00 1.01 GEN-STA 1.03 1.08 1.03 YES 1.01 nan 3.43 Sk_om. nan 11.75 COL ... Area 3.35 -2336 3.23 1.70 1.25 2.78 nan 1.01 19 0.16 -0.26 0.12 0.37 0.28 0.26 0.11 3.50 3.94 31 0.42 0.19 0.23 0.23 2.79 22 0.00 0.00 -0.27 -0.09 49.00 29 17.73 4 8 28.16 236.95 0.71 -2.74 -0.64 -126.00 -240.25 -293.95 -29,857.17 5.00 2.00 13.00 6.00 0.00 0.00
80 TC81 LC81 635.00 278.20 2.39 2,827.29 635.00 278.20 2.39 2,827.29 438.04 1,102.94 44.60 43,264,592.00 58,047,308.00 5,766,065,664.00 46.60 -388.60 92.80 46.60 -388.60 92.80 54.10 -385.00 95.80 54.10 -385.00 95.80 4 -2127 3871 -2127 3871 643 94 643 5,463.00 0.21 LOC-STA 0.22 0.21 0.21 YES 0.21 2.07 2.07 Sk_om. nan nan COL ... Area 9.23 -2336 2.35 1.23 1.02 2.89 nan 0.21 13 -0.46 0.23 -0.23 -0.51 0.76 0.08 0.54 2.39 6.60 52 0.62 0.15 0.46 0.54 2.79 22 0.55 0.09 0.45 0.27 25.57 29 21.48 4 8 30.04 278.20 0.42 0.21 -1.33 19.64 -388.60 92.75 5,462.83 1.00 7.00 32.00 8.00 12.00 2.00
84 TC85 LC85 635.00 283.83 5.15 2,827.29 635.00 283.83 5.15 2,827.29 343.33 1,805.05 36.55 16,489,596.00 78,900,216.00 5,214,702,080.00 -144.20 186.40 276.30 -144.20 186.40 276.30 -144.20 186.40 276.30 -144.20 186.40 276.30 -1077 1173 1828 1173 1828 1014 -1077 1014 -62,768.00 3.13 GEN-STA 4.89 4.58 4.58 NO 3.13 nan 15.91 Web nan 1.66 COL ... Area 1.99 -2311 5.35 3.09 1.45 2.48 nan 1.45 28 0.00 -0.43 -0.14 -0.70 -0.58 0.14 0.14 5.15 2.67 21 0.33 0.67 -0.33 1.00 2.54 20 0.25 0.65 -0.40 0.80 33.54 29 12.11 4 8 24.10 283.83 0.96 -0.67 0.48 -221.15 186.39 276.32 -62,768.46 4.00 4.00 7.00 14.00 5.00 13.00
87 TC88 LC88 635.00 298.01 2.58 2,827.29 635.00 298.01 2.58 2,827.29 362.82 1,131.69 27.83 41,831,340.00 88,158,376.00 6,372,982,784.00 -196.50 -239.30 -260.90 -196.50 -239.30 -260.90 -375.20 -258.00 -274.90 -375.20 -258.00 -274.90 -58 -581 -8199 -581 -8199 -1590 -749 -1590 -55,483.00 0.12 LOC-STA 0.13 0.12 0.12 YES 0.24 1.96 3.51 Sk_om. nan 1.96 COL ... Area 2.18 -2336 1.09 0.68 0.64 1.32 nan 0.15 14 0.36 0.57 0.33 0.34 0.33 0.57 0.21 2.58 6.48 51 0.61 0.16 0.45 0.53 2.79 22 0.73 0.09 0.64 0.64 27.76 29 10.43 4 8 22.91 298.01 0.44 -2.52 -0.64 -186.18 -239.26 -260.94 -55,483.15 8.00 3.00 31.00 8.00 16.00 2.00
93 TC94 LC94 635.00 292.38 5.15 2,827.29 635.00 292.38 5.15 2,827.29 462.13 1,967.89 61.54 59,486,944.00 204,922,912.00 17,906,550,784.00 1.80 -310.00 -252.20 1.80 -310.00 -252.20 1.80 -310.00 -252.20 1.80 -310.00 -252.20 93 -1091 -5305 -1091 -5305 -2194 93 -2194 4,985.00 1.03 LOC-STA 1.04 1.03 1.03 YES 1.15 6.51 6.51 Sk_om. nan nan COL ... Area 2.73 -2805 1.90 1.36 1.30 1.76 nan 1.03 28 0.29 0.71 -0.13 0.26 -0.03 0.57 0.29 5.15 3.94 31 0.81 0.06 0.74 0.74 2.67 21 0.81 0.00 0.81 0.62 26.36 29 47.30 4 8 20.72 292.38 0.67 3.07 -0.89 17.05 -309.98 -252.23 4,985.22 16.00 8.00 25.00 2.00 17.00 0.00
107 TC108 LC108 635.00 283.95 2.94 2,827.29 635.00 283.95 2.94 2,827.29 417.61 1,252.42 58.43 22,976,110.00 116,803,960.00 15,581,134,848.00 121.10 -303.70 -213.80 121.10 -303.70 -213.80 41.10 -311.60 -210.70 41.10 -311.60 -210.70 590 -5261 -7229 -5261 -7229 -1634 361 -1634 42,193.00 0.11 LOC-STA 0.11 0.11 0.11 YES nan 0.54 0.54 Sk_om. nan nan COL ... NaN 3.45 -2336 nan nan nan 1.46 nan 0.13 16 0.62 0.50 0.92 0.91 -0.04 0.69 0.06 2.94 4.06 32 0.56 0.06 0.50 0.25 2.41 19 0.21 0.05 0.16 -0.47 40.65 29 18.87 4 8 29.00 283.95 0.59 2.53 -0.86 148.60 -303.68 -213.76 42,193.22 11.00 1.00 18.00 2.00 4.00 1.00
116 TC117 LC117 635.00 241.29 5.34 2,827.29 635.00 241.29 5.34 2,827.29 432.80 1,721.29 44.60 34,048,596.00 103,039,640.00 10,327,708,672.00 -26.60 -351.00 180.20 -26.60 -351.00 180.20 -26.60 -351.00 180.20 -26.60 -351.00 180.20 653 -1862 1186 -1862 1186 405 653 405 15,858.00 1.05 LOC-STA 1.05 1.07 1.05 YES 1.13 6.43 6.43 Sk_om. nan nan COL ... Area 7.80 -2805 3.16 1.88 1.19 2.00 nan 1.05 29 0.17 -0.38 0.32 -0.10 -0.44 0.24 0.07 5.34 7.11 56 0.61 0.11 0.50 0.43 2.54 20 0.30 0.05 0.25 -0.30 26.24 29 22.46 4 8 27.99 241.29 0.36 0.35 -1.07 65.72 -351.02 180.19 15,857.87 7.00 2.00 34.00 6.00 6.00 1.00
120 TC121 LC121 635.00 257.23 5.52 2,827.29 635.00 257.23 5.52 2,827.29 611.13 2,031.04 59.64 76,787,984.00 164,963,760.00 40,482,533,376.00 -137.30 -176.50 332.40 -137.30 -176.50 332.40 -137.30 -176.50 332.40 -137.30 -176.50 332.40 1 -944 2177 -944 2177 600 1 600 -34,808.00 1.02 LOC-STA 1.02 1.14 1.02 YES 1.19 4.84 4.84 Sk_om. nan 17.97 COL ... Area 7.99 -2805 3.60 1.86 1.10 2.91 nan 1.02 30 0.33 -0.33 0.59 0.18 0.24 0.33 0.00 5.52 5.97 47 0.66 0.17 0.49 0.66 3.17 25 0.84 0.00 0.84 0.68 43.35 29 28.40 4 8 23.77 257.23 0.52 -0.39 -0.46 -135.32 -176.55 332.44 -34,807.69 10.00 0.00 31.00 8.00 21.00 0.00
125 TC126 LC126 635.00 230.98 3.68 2,827.29 635.00 230.98 3.68 2,827.29 320.29 1,170.30 49.45 29,249,938.00 91,652,312.00 7,384,034,816.00 -8.80 374.50 -137.60 -8.80 374.50 -137.60 -8.80 374.50 -137.60 -8.80 374.50 -137.60 -219 1391 -3328 1391 -3328 -1074 -219 -1074 -6,527.00 30.17 STR nan nan nan NaN 66.89 30.17 30.17 Web nan 22.61 COL ... Area 4.95 -2336 4.53 2.24 1.47 4.25 nan 1.47 20 0.00 0.60 -0.70 0.74 0.05 0.40 0.40 3.68 4.06 32 0.69 0.06 0.63 0.50 2.16 17 0.47 0.06 0.41 0.06 27.41 29 17.15 4 8 34.39 230.98 0.54 -2.94 1.21 -28.26 374.51 -137.65 -6,527.08 8.00 8.00 22.00 2.00 8.00 1.00
131 TC132 LC132 635.00 262.85 2.94 2,827.29 635.00 262.85 2.94 2,827.29 398.49 1,171.27 62.57 47,989,652.00 65,436,160.00 16,679,764,992.00 -11.70 -355.60 161.00 -11.70 -355.60 161.00 -31.80 -371.10 155.30 -31.80 -371.10 155.30 561 -1810 2523 -1810 2523 1341 351 1341 22,951.00 0.28 LOC-STA 0.28 0.33 0.28 YES nan 1.08 1.08 Sk_om. nan nan COL ... Area 3.60 -2197 2.40 1.15 1.21 2.16 nan 0.32 16 -0.38 -0.25 -0.22 -0.57 0.41 0.00 0.38 2.94 2.41 19 0.74 0.11 0.63 0.68 2.29 18 0.78 0.06 0.72 0.67 41.01 29 34.02 4 8 22.21 262.85 0.99 0.50 -1.10 87.31 -355.62 160.97 22,950.62 0.00 6.00 14.00 2.00 14.00 1.00
153 TC154 LC154 635.00 298.24 3.86 2,827.29 635.00 298.24 3.86 2,827.29 318.74 1,469.95 80.47 44,214,124.00 75,910,264.00 23,215,155,200.00 163.70 -28.20 2.40 163.70 -28.20 2.40 163.70 -28.20 2.40 163.70 -28.20 2.40 1581 -311 36 -311 36 13 1581 13 118,998.00 12.83 GEN-STA 13.22 18.04 13.22 YES 12.83 nan 18.83 Sk_om. nan nan COL ... Area 3.79 -2311 5.32 3.31 3.53 nan nan 3.53 21 -0.52 0.24 -0.24 -0.53 -0.18 0.05 0.57 3.86 2.67 21 0.90 0.10 0.81 1.00 1.40 11 0.91 0.09 0.82 1.00 40.60 29 45.20 4 8 25.29 298.24 0.53 1.56 -0.07 399.00 -28.20 2.45 118,997.76 1.00 12.00 19.00 2.00 10.00 1.00

20 rows × 104 columns

1.7.2. Analysing p0 and p90 relationship for skin, cap, and web

In [62]:
plies_at_0 = [i for i in csps_inputs if 'p0' in i]
In [63]:
plies_at_0
Out[63]:
['p0', 'p0c', 'p0w']
In [64]:
csps_inputs[plies_at_0].describe([.9, .95, .99])
Out[64]:
p0 p0c p0w
count 100,000.00 100,000.00 100,000.00
mean 0.31 0.53 0.33
std 0.18 0.19 0.24
min 0.00 0.00 0.00
50% 0.29 0.57 0.29
90% 0.56 0.77 0.69
95% 0.62 0.81 0.78
99% 0.73 0.89 0.90
max 1.00 1.00 1.00
In [65]:
plot_correlation(csps_inputs, plies_at_0)
In [66]:
sns.pairplot(csps_inputs[plies_at_0]);
plt.show();
In [67]:
plies_at_90 = [i for i in csps_inputs if 'p90' in i]
In [68]:
plies_at_90
Out[68]:
['p90', 'p90c', 'p90w']
In [69]:
csps_inputs[plies_at_90].describe([.9, .95, .99])
Out[69]:
p90 p90c p90w
count 100,000.00 100,000.00 100,000.00
mean 0.30 0.22 0.32
std 0.18 0.17 0.24
min 0.00 0.00 0.00
50% 0.28 0.18 0.28
90% 0.55 0.46 0.67
95% 0.62 0.56 0.76
99% 0.73 0.73 0.90
max 1.00 1.00 1.00
In [70]:
plot_correlation(csps_inputs, plies_at_90)
In [71]:
sns.pairplot(csps_inputs[plies_at_90]);
plt.show();

1.7.3. Now splitting analysis by features related to skin, cap, and web respectively

In [72]:
p_skin = ["p0", "p90", "t", "Nbplies"]
p_cap = ["p0c", "p90c", "tc", "Nbplies_cap"]
p_web = ["p0w", "p90w", "tw", "Nbplies_web"]
In [73]:
csps_sorted[p_skin].describe([.9, .95, .99])
Out[73]:
p0 p90 t Nbplies
count 100,000.00 100,000.00 100,000.00 100,000.00
mean 0.31 0.30 4.14 22.48
std 0.18 0.18 1.54 8.37
min 0.00 0.00 1.47 8.00
50% 0.29 0.28 4.05 22.00
90% 0.56 0.55 6.26 34.00
95% 0.62 0.62 6.62 36.00
99% 0.73 0.73 6.81 37.00
max 1.00 1.00 6.81 37.00
In [74]:
plot_correlation(csps_sorted, p_skin)
In [75]:
sns.pairplot(csps_sorted[p_skin]);
plt.show();
In [76]:
csps_sorted[p_cap].describe([.9, .95, .99])
Out[76]:
p0c p90c tc Nbplies_cap
count 100,000.00 100,000.00 100,000.00 100,000.00
mean 0.53 0.22 3.73 29.35
std 0.19 0.17 1.71 13.43
min 0.00 0.00 1.14 9.00
50% 0.57 0.18 3.30 26.00
90% 0.77 0.46 6.22 49.00
95% 0.81 0.56 7.24 57.00
99% 0.89 0.73 8.89 70.00
max 1.00 1.00 10.54 83.00
In [77]:
plot_correlation(csps_sorted, p_cap)
In [78]:
sns.pairplot(csps_sorted[p_cap]);
plt.show();
In [79]:
csps_sorted[p_web].describe([.9, .95, .99])
Out[79]:
p0w p90w tw Nbplies_web
count 100,000.00 100,000.00 100,000.00 100,000.00
mean 0.33 0.32 2.16 17.00
std 0.24 0.24 0.59 4.63
min 0.00 0.00 1.14 9.00
50% 0.29 0.28 2.16 17.00
90% 0.69 0.67 2.92 23.00
95% 0.78 0.76 3.05 24.00
99% 0.90 0.90 3.17 25.00
max 1.00 1.00 3.17 25.00
In [80]:
plot_correlation(csps_sorted, p_web)
In [81]:
sns.pairplot(csps_sorted[p_web]);
plt.show();

1.7.4. Checking ABD Matrices related features

In [82]:
abd_matrices = [i for i in csps_inputs if 'chiD' in i]
In [83]:
csps_inputs[abd_matrices].describe([.9, .95, .99])
Out[83]:
chiD1 chiD2 chiD3
count 100,000.00 100,000.00 100,000.00
mean -0.00 0.06 0.00
std 0.36 0.42 0.33
min -1.00 -1.00 -0.96
50% -0.00 0.06 0.00
90% 0.48 0.63 0.43
95% 0.58 0.72 0.53
99% 0.73 0.87 0.70
max 1.00 1.00 0.93
In [84]:
plot_correlation(csps_inputs, abd_matrices)
In [85]:
sns.pairplot(csps_inputs[abd_matrices]);
plt.show();

1.8. Inspecting original CSPS outputs

In [86]:
csps_outputs.describe([.9, .95, .99])
Out[86]:
Panel_local_buckling (SYM.) Panel_local_buckling (ROT.) General_Buckling Post-Buckling_RF Stringer_local_buckling_RF IDT_RF Post-Buckling_Cut-Off Skin_DT SkinUnderOmega_DT DTStringer PlainStrength
count 75,911.00 77,459.00 79,964.00 56,823.00 95,907.00 49,107.00 93,966.00 96,653.00 96,653.00 99,999.00 96,653.00
mean 7.78 6.02 18.80 50.99 44.25 19.09 29.89 2.84 3.13 6.06 4.44
std 37.34 21.37 74.65 130.10 111.36 63.11 101.13 2.36 2.43 9.49 3.33
min 0.00 0.00 0.01 0.04 0.04 0.10 0.01 0.03 0.05 0.05 0.07
50% 1.39 1.33 1.64 5.46 8.88 4.38 1.93 2.24 2.54 3.82 3.60
90% 11.07 12.21 28.77 133.08 102.04 33.28 57.31 5.89 6.29 12.25 8.80
95% 25.19 26.90 78.40 286.18 217.20 72.10 156.90 7.54 7.97 18.04 11.09
99% 128.19 78.61 413.61 738.75 647.10 319.78 600.44 11.13 11.53 36.87 16.35
max 998.00 976.60 992.30 999.50 999.50 996.60 999.50 21.76 21.87 737.00 50.35
In [87]:
csps_outputs.isna().sum()
Out[87]:
Panel_local_buckling (SYM.)    24089
Panel_local_buckling (ROT.)    22541
General_Buckling               20036
Post-Buckling_RF               43177
Stringer_local_buckling_RF      4093
IDT_RF                         50893
Post-Buckling_Cut-Off           6034
Skin_DT                         3347
SkinUnderOmega_DT               3347
DTStringer                         1
PlainStrength                   3347
dtype: int64
In [88]:
csps_outputs.hist()
plt.show()
In [89]:
plot_correlation(csps_outputs, outputs)
In [90]:
sns.pairplot(csps_outputs);
plt.show();
/opt/soft/cdtng/tools/anaconda/3/lib/python3.6/site-packages/numpy/lib/histograms.py:746: RuntimeWarning: invalid value encountered in greater_equal
  keep = (tmp_a >= first_edge)
/opt/soft/cdtng/tools/anaconda/3/lib/python3.6/site-packages/numpy/lib/histograms.py:747: RuntimeWarning: invalid value encountered in less_equal
  keep &= (tmp_a <= last_edge)

1.8.1 Filling NAs and updating

In [131]:
csps_outputs = csps_outputs.fillna(0)
In [132]:
csps_outputs.describe([.9, .95, .99])
Out[132]:
Panel_local_buckling (SYM.) Panel_local_buckling (ROT.) General_Buckling Post-Buckling_RF Stringer_local_buckling_RF IDT_RF Post-Buckling_Cut-Off Skin_DT SkinUnderOmega_DT DTStringer PlainStrength
count 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00
mean 5.91 4.66 15.03 28.97 42.44 9.37 28.08 2.75 3.03 6.06 4.29
std 32.71 18.97 67.18 101.27 109.41 45.24 98.29 2.38 2.46 9.49 3.37
min 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
50% 0.78 0.83 1.11 0.88 8.16 0.00 1.69 2.14 2.44 3.82 3.49
90% 7.93 8.86 19.79 57.29 97.22 14.32 52.01 5.81 6.21 12.25 8.69
95% 18.12 20.60 57.02 157.90 209.80 32.57 143.90 7.46 7.89 18.04 11.00
99% 101.10 71.04 348.00 600.10 640.20 173.80 577.40 11.04 11.46 36.87 16.24
max 998.00 976.60 992.30 999.50 999.50 996.60 999.50 21.76 21.87 737.00 50.35
In [93]:
csps_outputs.hist()
plt.show()

2.Scaling inputs

In [133]:
scaler = StandardScaler()
scaler_fit = scaler.fit(csps_inputs)
csps_inputs_scaled_temp = scaler_fit.transform(csps_inputs)
In [134]:
csps_inputs_scaled = pd.DataFrame(csps_inputs_scaled_temp, columns=csps_inputs.columns)
In [135]:
csps_inputs_scaled.hist()
plt.show()
In [136]:
csps_inputs_scaled.describe([.9, .95, .99])
Out[136]:
t p0 p90 chiD1 chiD2 chiD3 tc p0c p90c tw p0w p90w h b alpha Nxx Nyy Nxy bf
count 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00
mean 0.00 0.00 0.00 -0.00 -0.00 0.00 0.00 -0.00 0.00 -0.00 -0.00 0.00 0.00 -0.00 0.00 0.00 -0.00 -0.00 -0.00
std 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00 1.00
min -1.73 -1.74 -1.71 -2.74 -2.50 -2.91 -1.52 -2.75 -1.31 -1.73 -1.38 -1.36 -1.53 -2.16 -1.55 -2.00 -1.41 -2.00 -1.54
50% -0.06 -0.11 -0.13 0.01 -0.00 -0.00 -0.25 0.17 -0.22 0.00 -0.16 -0.19 -0.12 0.12 -0.11 -0.00 -0.00 0.00 -0.12
90% 1.38 1.43 1.43 1.32 1.34 1.29 1.46 1.23 1.43 1.30 1.48 1.45 1.49 1.27 1.48 1.42 1.35 1.42 1.48
95% 1.61 1.79 1.80 1.60 1.55 1.61 2.06 1.42 2.05 1.51 1.85 1.86 1.77 1.40 1.76 1.70 1.40 1.70 1.78
99% 1.73 2.44 2.43 2.00 1.91 2.12 3.03 1.87 3.05 1.73 2.38 2.43 2.02 1.51 2.01 1.94 1.41 1.94 2.07
max 1.73 3.97 3.99 2.75 2.21 2.81 3.99 2.42 4.69 1.73 2.78 2.85 2.09 1.54 2.07 2.00 1.42 2.00 2.16

3.Splitting into train and test

In [137]:
X_train, X_test, y_train, y_test = train_test_split(csps_inputs_scaled, csps_outputs, test_size=0.25, random_state=42)
In [138]:
X_train.hist()
plt.show()
In [139]:
X_test.hist()
plt.show()
In [140]:
X_train.shape
Out[140]:
(75000, 19)
In [141]:
X_train.to_csv('X_train_CSPS_scaled_v2.csv',index=False)
X_test.to_csv('X_test_CSPS_scaled_v2.csv', index=False)
y_train.to_csv('y_train_CSPS_v2.csv',index=False)
y_test.to_csv('y_test_CSPS_v2.csv',index=False)

4.Annex

4.1.Checking how loads are correlated with each other

In [306]:
loads = ['theta','phi','Nxx','Nyy','Nxy','Fn']
In [307]:
csps_loads = csps_sorted[loads]
In [308]:
csps_loads.describe([.9, .95, .99])
Out[308]:
theta phi Nxx Nyy Nxy Fn
count 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00 100,000.00
mean 0.00 -0.00 0.23 -0.19 -0.11 63.39
std 1.81 0.91 199.70 282.80 200.36 50,395.00
min -3.14 -1.57 -399.99 -400.00 -399.96 -119,640.98
50% 0.00 -0.00 0.07 -0.91 -0.10 19.68
90% 2.51 1.26 284.02 380.42 284.62 70,151.11
95% 2.83 1.41 339.24 395.08 340.44 84,940.96
99% 3.08 1.54 387.12 399.81 387.91 104,111.57
max 3.14 1.57 399.98 400.00 400.00 119,330.34
In [309]:
plot_correlation(csps_loads, loads)
In [310]:
sns.pairplot(csps_loads);
plt.show();
In [180]:
# How to approach RF = 0?
In [159]:
csps_sorted.info()
<class 'pandas.core.frame.DataFrame'>
Int64Index: 100000 entries, 0 to 99999
Data columns (total 98 columns):
Test_case_ID                        100000 non-null object
Load_Case_ID                        100000 non-null object
Left_Panel_length                   100000 non-null float64
Left_Panel_width                    100000 non-null float64
Left_Panel_thickness                100000 non-null float64
Left_Panel_curvature_radius         100000 non-null float64
Right_Panel_length                  100000 non-null float64
Right_Panel_width                   100000 non-null float64
Right_Panel_thickness               100000 non-null float64
Right_Panel_curvature_radius        100000 non-null float64
Stringer_Cross_Section              100000 non-null float64
Super-Stringer_Cross_Section        100000 non-null float64
Skin_width_below_omega              100000 non-null float64
Stringer axial stiffness            100000 non-null float64
Total axial stiffness               100000 non-null float64
Total bending stiffness             100000 non-null float64
NX_Left_LFX                         100000 non-null float64
NY_Left_LFX                         100000 non-null float64
NXY_Left_LFX                        100000 non-null float64
NX_Right_LFX                        100000 non-null float64
NY_Right_LFX                        100000 non-null float64
NXY_Right_LFX                       100000 non-null float64
NX_Left_NLF                         100000 non-null float64
NY_Left_NLF                         100000 non-null float64
NXY_Left_NLF                        100000 non-null float64
NX_Right_NLF                        100000 non-null float64
NY_Right_NLF                        100000 non-null float64
NXY_Right_NLF                       100000 non-null float64
EPS_X_LFX                           100000 non-null int64
EPS_Y_Left_LFX                      100000 non-null int64
EPS_XY_Left_LFX                     100000 non-null int64
EPS_Y_Right_LFX                     100000 non-null int64
EPS_XY_Right_LFX                    100000 non-null int64
EPS_XY_STR_LFX                      100000 non-null int64
EPS_X_NLF                           100000 non-null int64
EPS_XY_STR_NLF                      100000 non-null int64
PX_TOT                              100000 non-null float64
Buckling_RF                         96134 non-null float64
Buckling_Mode                       100000 non-null object
Panel_local_buckling (SYM.)         75911 non-null float64
Panel_local_buckling (ROT.)         77459 non-null float64
Panel_local_buckling                76031 non-null float64
Hoop_Driven                         76066 non-null object
General_Buckling                    79964 non-null float64
Post-Buckling_RF                    56823 non-null float64
Stringer_local_buckling_RF          95907 non-null float64
Stringer_local_buckling_Location    85362 non-null object
Skin_inter-rivet_buckling_RF        0 non-null float64
IDT_RF                              49107 non-null float64
IDT_Type                            85362 non-null object
Post-Buckling_Cut-Off               93966 non-null float64
Skin_DT                             96653 non-null float64
Skin_DT_Criterion                   96653 non-null object
SkinUnderOmega_DT                   96653 non-null float64
SkinUnderOmega_DT_Criterion         96653 non-null object
DTStringer                          99999 non-null float64
Omega CAI Allowable                 100000 non-null int64
PlainStrength                       96653 non-null float64
NotchSensitivity                    75146 non-null float64
Reparability_Panel                  96653 non-null float64
Reparability_Stringer               91541 non-null float64
Drain_Hole                          0 non-null float64
Critical_RF                         100000 non-null float64
Nbplies                             100000 non-null int64
chiA1                               100000 non-null float64
chiA2                               100000 non-null float64
chiD1                               100000 non-null float64
chiD2                               100000 non-null float64
chiD3                               100000 non-null float64
p0                                  100000 non-null float64
p90                                 100000 non-null float64
t                                   100000 non-null float64
tc                                  100000 non-null float64
Nbplies_cap                         100000 non-null int64
p0c                                 100000 non-null float64
p90c                                100000 non-null float64
chiA1c                              100000 non-null float64
chiA2c                              100000 non-null float64
tw                                  100000 non-null float64
Nbplies_web                         100000 non-null int64
p0w                                 100000 non-null float64
p90w                                100000 non-null float64
chiA1w                              100000 non-null float64
chiA2w                              100000 non-null float64
h                                   100000 non-null float64
ba                                  100000 non-null int64
bf                                  100000 non-null float64
ra                                  100000 non-null int64
rf                                  100000 non-null int64
alpha                               100000 non-null float64
b                                   100000 non-null float64
ro                                  100000 non-null float64
theta                               100000 non-null float64
phi                                 100000 non-null float64
Nxx                                 100000 non-null float64
Nyy                                 100000 non-null float64
Nxy                                 100000 non-null float64
Fn                                  100000 non-null float64
dtypes: float64(75), int64(15), object(8)
memory usage: 78.0+ MB
In [142]:
csps_sorted.to_csv('CSPS_sorted_v2.csv',index=False)
In [ ]: